package com.mk.seckill.config;

/**
 * RabbitMQ配置类-Headers配置类
 *
 * @author: LC
 * @date 2022/3/8 5:39 下午
 * @ClassName: RabbitMQHeadersConfig
 */
//@Configuration
public class RabbitMQHeadersConfig {
    /**
     * @Author hhwu
     * @Description //TODO 学习rabbitmq,header模式，很少使用，根据map 的键值对进行匹配，自定义全部匹配还是部分匹配
     * @Date 15:19 2022/6/11
     **/

//    private static final String QUEUE01 = "queue_header01";
//    private static final String QUEUE02 = "queue_header02";
//    private static final String EXCHANGE = "headersExchange";
//
//    @Bean
//    public Queue queue01() {
//        return new Queue(QUEUE01);
//    }
//
//    @Bean
//    public Queue queue02() {
//        return new Queue(QUEUE02);
//    }
//
//    @Bean
//    public HeadersExchange headersExchange() {
//        return new HeadersExchange(EXCHANGE);
//    }
//
//    @Bean
//    public Binding binding01() {.
//        /**
//         * @Author hhwu
//         * @Description //TODO 任意匹配到一个键值对消息即可进入队列
//         * @Date 15:20 2022/6/11
//         * @Param
//         * @return
//         **/
//        Map<String, Object> map = new HashMap<>();
//        map.put("color", "red");
//        map.put("speed", "low");
//        return BindingBuilder.bind(queue01()).to(headersExchange()).whereAny(map).match();
//    }
//
//    @Bean
//    public Binding binding02() {
        /**
         * @Author hhwu
         * @Description //TODO 需要匹配到全部的键值对消息才能进入队列
         * @Date 15:20 2022/6/11
         * @Param
         * @return
         **/
//        Map<String, Object> map = new HashMap<>();
//        map.put("color", "red");
//        map.put("speed", "fast");
//        return BindingBuilder.bind(queue02()).to(headersExchange()).whereAll(map).match();
//    }
}
